Awesome Android
    
      
    
    
      
      
      
    
    About
    
      A curated list of awesome Android libraries and
      resources. For general Java libraries have a look
      at awesome-java.
    
    
      Supported with ❤️ by
      Instabug
    
    
      Understand How Your Android App is Doing with Real-Time Contextual
      Insights From Your Users
    
    
      
      >Instabug helps Android developers and product teams easily collect
      bugs and feedback from beta testers and users to iterate faster and ship
      quality apps. Instabug automatically attaches screenshots, device details,
      network logs, repro steps, and tons of other critical insights needed to
      resolve issues and prioritize product backlogs. > Mobile teams
      accelerate their workflows by seamlessly integrating with third-party
      tools like Github, Jira, Slack, Zendesk and much more.
      Instabug is offering Awesome Android community an exclusive 15%
        discount on all paid plans. Get Started!
      
    
    How to Use
    
      Awesome-Android is an amazing list for people who need a certain feature
      on their app, so the best ways to use are: - Simply press command + F to
      search for a keyword - Go through our Content Menu
    
    Content
    
    Emulators
    
    Libraries
    Charts
    
      - 
        AChartEngine -
        Charting Engine.
      
 
      - 
        EazeGraph - Chart
        and graph library.
      
 
      - 
        WilliamChart
        - Chart library with good motion capabilities.
      
 
      - 
        HelloCharts -
        Chart and graph library with support for scaling, scrolling and
        animations.
      
 
      - 
        MPAndroidChart -
        An Android chart and graph library supporting scaling and dragging by
        gesture.
      
 
      - 
        ArcChartView
        - Draw Creative Statistic Arc Charts.
      
 
      - 
        AnyChart -
        Data visualization library, Interactive charts.
      
 
    
    Cloud Services
    
      - 
        CloudRail - Unified API Library for:
        Cloud Storage, Social Profiles, Payment, Email, SMS & POIs.
      
 
    
    Data binding
    
      - 
        Anvil - A small library
        to create reactive UI components, inspired by React. Provides data
        binding and event listener binding, fits well for MVVM.
      
 
      - 
        Data Binding Library
        - Official Android Data Binding Library to write declarative layouts and
        minimize the glue code necessary to bind application logic and layouts.
      
 
    
    Dependency Injection
    
      - 
        Dagger 2 - A fast
        dependency injector for Android and Java.
      
 
      - 
        Butter Knife -
        View “injection” library for Android.
      
 
      - 
        ActivityStarter
        - Android Library that provide simpler way to start the Activities with
        multiple arguments.
      
 
      - 
        AndroidAnnotations
        - Java annotations with dependency injection at compile time.
      
 
      - 
        Toothpick - A
        scope tree based Dependency Injection (DI) library for Java.
      
 
    
    Android Services
    
      - 
        Remoter - An
        alternative to Android AIDL for Android Remote IPC services using plain
        java interfaces.
      
 
      - 
        Service Connector
        - Bind Android services and callbacks to fields and methods.
      
 
    
    Game Development
    
      - 
        Libgdx - Cross-platform
        game engine and SDK.
        Open Source
      
 
      - 
        Vuforia - Augmented Reality
        library.
      
 
      - 
        Unity -
        Cross-platform game creation system.
      
 
      - 
        Rajawali - Android
        OpenGL ES 2.0/3.0 Engine
      
 
      - 
        Cocos2d-x - Cross-platform 2d game
        framework.
      
 
      - 
        JustWeEngine - An
        easy open source Android Native Game FrameWork.
      
 
    
    Security
    
      - 
        libsignal-protocol-java
        - A ratcheting forward secrecy protocol that works in synchronous and
        asynchronous messaging environments.
      
 
      - 
        Themis -
        Multi-language framework for making typical encryption schemes easy to
        use: data at rest, authenticated data exchange, transport protection,
        authentication, and so on.
      
 
    
    GUI
    
      - 
        Pull to refresh
        - A swipe refresh layout is available in the v4 support library.
      
 
      - 
        Cardslib -
        Android Library to build a UI Card.
      
 
      - 
        AndroidStaggeredGrid
        - Grid view which supports multiple columns with rows of varying sizes.
      
 
      - 
        Flow - Library that helps
        with describing an app as a collection of moderately independent
        screens.
      
 
      - 
        SortableTableView
        - An Android library containing a simple TableView and an advanced
        SortableTableView providing a lot of customisation possibilities to fit
        all needs.
      
 
      - 
        MaterialProgressBar
        - Material design ProgressBar with consistent appearance.
      
 
      - 
        AndroidFillableLoaders
        - Fillable progress view working with SVG paths. Nice option too for
        creating interesting app logos.
      
 
      - 
        NexusDialog -
        Allows you to easily and quickly create forms in Android with little
        code.
      
 
      - 
        Snap RecyclerView Utils
        - Populate Single or multiple Layout RecyclerView without creating an
        Adapter.
      
 
      - 
        MultiSnapRecyclerView
        - Android library for multiple snapping of RecyclerView
      
 
      - 
        SwipeableCard
        - Implementation of swipe card like StreetView!!
      
 
      - 
        ElasticProgressBar
        - Beautiful loading bar.
      
 
      - 
        EntryScreenManager
        - Intro/Entry/Walkthrough/Starting Screens.
      
 
      - 
        EasyIntro - The
        flexible, easy to use, all in one app intro library for your Android
        project.
      
 
      - 
        Material-Calendar-View
        - Material Design Calendar compatible with API 8+
      
 
      - 
        CrunchyCalendar
        - A material calendar widget with infinite scrolling, date range
        selection and color customization.
      
 
      - 
        SmoothOverscrollableScrollView
        - Small custom view with smooth overscroll. You can add header with
        scale background
      
 
      - 
        SectionedRecyclerViewAdapter
        - An Adapter that allows a RecyclerView to be split into Sections with
        headers and/or footers.
      
 
      - 
        DragListView -
        Drag and drop to reorder items in a list, grid or board.
      
 
      - 
        Animated Expanding ListView
        - Animated Expanding ListView provides a fancy animation on expanding or
        collapsing the content of a listview item.
      
 
      - 
        TastyToast -
        Toasts with icons and color.
      
 
      - 
        DotLoader - A
        customizable loading animation with Dots.
      
 
      - 
        PodSlider - A
        customizable slider widget adhering to material design specs.
      
 
      - 
        TapTargetView -
        An implementation of tap targets from the Material Design guidelines for
        feature discovery.
      
 
      - 
        ShowCaseView - The
        ShowcaseView library is designed to highlight and showcase specific
        parts of apps to the user with a attractive and flat overlay.
      
 
      - 
        MaterialIntroScreen
        - Material Intro Screen implementation with easily extensible API.
      
 
      - 
        FloatingView -
        FloatingView can make the target view floating above the anchor view
        with cool animation.
      
 
      - 
        Timecon -
        Easy-to-use animated clock icon
      
 
      - 
        Audiogram -
        Lightweight audiowave progressbar
      
 
      - 
        Bubbles for Android
        - Facebook like chat bubble library
      
 
      - 
        Litho (By Facebook) - A
        declarative framework for building efficient UIs on Android.
      
 
      - 
        MultiViewAdapter
        - Recyclerview Adapter library to create composable view holders.
      
 
      - 
        LGSnackbar - An easy
        to use and customisable wrapper of the native Android Snackbar which
        stays visible across multiple activities.
      
 
      - 
        ShimmerLayout
        - Memory efficient shimmering effect for Android applications.
      
 
      - 
        CircleProgressBar
        - A simple library for creating circular progressbars for Android.
      
 
      - 
        Easy-Signature-Android
        - An simple ui library that provides a plugable signature view.
      
 
      - 
        Flashbar - A highly
        customizable, powerful and easy-to-use alerting library for Android.
      
 
      - 
        YuanaItemSettingView
        - Customizable Item Setting View for Android.
      
 
      - 
        Gradients - A
        curated collection of splendid gradients.
      
 
      - 
        OneAdapter -
        RecyclerView Adapter with multiple modules and hooks to simplify and
        enhance the use while preventing common mistakes.
      
 
    
    Paginate
    
    ActionBar
    
    Navigation
    
    Animations
    
      - 
        Rebound - Rebound is a
        Java library that models spring dynamics.
      
 
      - 
        Android View Animations
        - Cute view animation collection.
      
 
      - 
        Android-Transition
        - Allows the easy creation of view transitions that react to user
        inputs.
      
 
      - 
        Android-View-Actions
        - Makes creating complex animations for views easy.
      
 
      - 
        Swipper - Android
        library for swipeable gestures to control volume , brightness and seek .
      
 
      - 
        Spotlight - Android
        Library that lights items for tutorials or walk-throughs etc…
      
 
    
    Images
    
      - 
        Crescento -
        Explore new style in material design by adding curve below image view.
      
 
      - 
        android-crop -
        Library project for cropping images.
      
 
      - 
        CircularImageView
        - Custom view for circular images while maintaining the best draw
        performance.
      
 
      - 
        Android-Image-Filter
        - Library project for applying image filters easily.
      
 
      - 
        Compressor -
        Compressor is a lightweight and powerful android image compression
        library.
      
 
      - 
        ShapeImageView
        - Library to display images in different shapes.
      
 
    
    
    
      - 
        FloatingLabel
        - FloatingLabel Allows you to create a blow kind of EditText.
        Doesn’t have Gradle or Maven Support.
      
 
      - 
        MaterialEditText
        - Supporting Floating Labels, Single Line Ellipsis, Max/Min Characters,
        Helper Text and Error Text with Custom Colors.
      
 
      - 
        EmojiCompat
        - Adds emoticons to your app
      
 
      - 
        MaterialSearchBar
        - Material Design Search Bar for Android
      
 
      - 
        InputMask
        - Pattern-based user input formatter, parser and validator.
      
 
      - 
        SweetPassword
        - Password EditText that allows to custom toggle button
      
 
      - 
        VoiceOverlay
        - An overlay that gets your user’s voice permission and input as text in
        a customizable UI.
      
 
    
    
    
    Loading Images
    
      - 
        Picasso - A powerful
        image downloading and caching library for Android.
      
 
      - 
        Universal Image Loader
        - Asynchronous, out of the box loading and caching of images.
      
 
      - 
        Glide - An image loading
        and caching library for Android focused on smooth scrolling, Recommended
        by Google.
      
 
      - 
        Fresco - An Android
        library for managing images and the memory they use.
      
 
      - 
        Glide Bitmap Pool
        - Glide Bitmap Pool is a memory management library for reusing the
        bitmap memory.
      
 
      - 
        Coil - Image loading for
        Android backed by Kotlin Coroutines.
      
 
    
    
    
      - 
        MediaPicker -
        Android Library that lets you to select multiple images, video or voice
        for Android
      
 
      - 
        Android Image Picker
        - A library that makes images and videos selection from gallery feels
        easy. It also support GIF and simple camera action
      
 
    
    Video
    
      - 
        ijkplayer -
        Android/iOS video player based on FFmpeg n3.2, with MediaCodec,
        VideoToolbox support.
      
 
      - 
        Exoplayer - ExoPlayer
        is an application level media player for Android, allow playing audio
        and video both locally and over the Internet. Supports features like
        Dynamic adaptive streaming over HTTP (DASH), SmoothStreaming and Common
        Encryption
      
 
      - 
        VideoPlayView
        - Custom Android view with video player, play/stop, loader and
        placeholder image.
      
 
    
    Camera
    
      - 
        MagicalCamera
        - Simple way to take or select photos of your gallery, with other
        features for manage pictures.
      
 
      - 
        Camera - Use Android
        camera to take pictures and videos, based on camera2 api.
      
 
    
    Field Validation
    
      - 
        Convalida - A
        simple and annotation-based way to validate your input fields.
      
 
    
    JSON
    
      - 
        Gson - Gson is a Java
        library used for serializing and deserializing Java objects from and
        into JSON.
      
 
      - 
        Jackson JSON Processor
        - High-performance JSON processor.
      
 
      - 
        
          Moshi - A modern JSON
          library for Android and Java. ### Crash monitoring
        
       
      - 
        Fabric Crashlytics - Easy crash
        reporting solution.
      
 
      - 
        HockeyApp - Distribution, Crash
        Reports, Feedback and Analytics
      
 
      - 
        Splunk MINT - Monitoring, Crash
        Reports, Real time data, Statistic.
      
 
      - 
        Bugsnag - Cross platform error
        monitoring. Free tier. Support for SDK & NDK. Error reports include
        data on device, release, user, and allows arbitrary data.
      
 
      - 
        Catcho - No Force
        Close any more.
      
 
      - 
        Apteligent - Cross platform
        crash reporting/analytics solution. Supports NDK log.
      
 
      - 
        
          Instabug - Bug reporting, Crash
          Reporting, In-app Feedback.
        
       
    
    Networking
    
      - 
        Ion - Good networking library
        for android.
      
 
      - 
        OkHttp - An HTTP+SPDY
        client for Android and Java applications.
      
 
      - 
        RoboSpice -
        Library that makes writing asynchronous network requests easy.
      
 
      - 
        IceNet - Fast, Simple
        and Easy Networking for Android
      
 
      - 
        Android Volley
        - Official Android HTTP library that makes networking for easier and
        faster.
      
 
      - 
        IceSoap - Easy,
        asynchronous, annotation-based SOAP for Android.
      
 
      - 
        node-android
        - Run Node.js on Android.
      
 
      - 
        HappyDns - A
        Dns library, user can use custom dns server, dnspod httpdns. Only
        support A record.
      
 
      - 
        RESTMock - HTTP Web
        server for mocking API responses in Android Instrumentation tests.
      
 
      - 
        Fast-Android-Networking
        - A Complete Fast Android Networking Library that also support HTTP/2.
      
 
    
    Logger
    
      - 
        logger - Simple,
        pretty and powerful logger for android
      
 
      - 
        timber - A logger
        with a small, extensible API which provides utility on top of Android’s
        normal Log class.
      
 
      - 
        LoggingInterceptor
        - An OkHttp interceptor which pretty logs request and response data.
      
 
      - 
        Bugfender
        - Upload your logs and check them online, specially made for mobile
      
 
      - 
        EzyLogger - Simple
        Lightweight logger
      
 
      - 
        Logback Android
        - Logback port to Android which provides a highly configurable logging
        framework for Android apps.
      
 
    
    Notifications
    
    Database
    
      - 
        Cupboard -
        Access the sqlite easily via direct database access or through the
        ContentProvider framework.
      
 
      - 
        DbInspector
        - Provides a simple way to view the contents of the in-app database for
        debugging purposes.
      
 
      - 
        SQLite Asset Helper
        - manage database creation and version management using an application’s
        raw asset files.
      
 
      - 
        Realm - The
        alternative to SQLite and ORMs: Simple, modern and fast! Object oriented
        API and multi platform support.
      
 
      - 
        Realm Asset Helper
        - Copies a realm database from the apk assets folder. Efficiently
        handles versioning of read-only realm databases.
      
 
      - 
        RestorableSQLiteDatabase
        - A wrapper to replicate android’s SQLiteDatabase with restoring
        capability.
      
 
      - 
        Nitrite Database
        - A NoSQL embedded document store for Android with MongoDb like API.
      
 
    
    ORM
    
      - 
        requery - Compile time
        ORM and SQL query library for Java & Android.
      
 
      - 
        GreenDAO - Light &
        fast ORM solution.
      
 
      - 
        ORMLite -
        Lightweight ORM Java package for JDBC and Android.
      
 
      - 
        ActiveAndroid - Active record
        style ORM.
      
 
      - 
        Sugar ORM - Insanely easy
        way to work with Android Databases.
      
 
      - 
        DBFlow - Fast and
        powerful ORM with compile-time annotation processing.
      
 
      - 
        NexusData - Object
        graph and persistence framework for Android.
      
 
      - 
        SimpleNoSQL - A
        simple NoSQL client for Android. Meant as a document store using
        key/value pairs and some rudimentary querying. Useful for avoiding the
        hassle of SQL code.
      
 
      - 
        RxSimpleNoSQL -
        Reactive extensions for SimpleNoSQL. Manipulate entities using
        Observables.
      
 
    
    REST
    
    Testing
    
      - 
        Robotium - Test
        automation framework for black-box UI tests.
      
 
      - 
        Roboletric - Unit test framework
        to run tests inside the JVM on your workstation, not in the emulator.
      
 
      - 
        AssertJ Android
        - AssertJ assertions geared towards Android.
      
 
      - 
        Green Coffee
        - Run your Cucumber tests in your Android instrumentation tests.
      
 
    
    Tracking
    
      - 
        MobileAppTracking - Tracking your
        marketing campaigns across multiple ad networks.
      
 
      - 
        Mixpanel - Analytics platform to
        analyze the users.
      
 
      - 
        Countly - Open source mobile & web
        analytics, push notifications and crash reporting platform, based on
        Node.js, MongoDB and Linux.
      
 
      - 
        CleverTap - Analytics platform and
        user-engagement platform with 1 million free events
      
 
    
    Maps
    
      - 
        Google-Directions-Android
        - Allows you to calculate the direction between two locations and
        display the route on a Google Map using the Google Directions API.
      
 
      - 
        Android Maps Extensions
        - Extending capabilities of Google Maps Android API v2, adding marker
        clustering among other things
      
 
      - 
        MapScaleView -
        Scale bar for Google Maps Android API
      
 
      - 
        GLMap - Crossplatform offline
        vector map with MapCSS styling. Offline search and offline navigation
        are included.
      
 
    
    Utility
    
      - 
        Conceal SharedPreferences
        - Secured Preferences using Facebook Secure Encryption called Conceal.
      
 
      - 
        EventBus - EventBus
        is a library that simplifies communication between different parts of
        your application.
      
 
      - 
        Otto - Event Bus for
        Android.
      
 
      - 
        Weak handler
        - Memory safer implementation of android.os.Handler.
      
 
      - 
        Byte Buddy - Runtime code generation
        library with support for Android.
      
 
      - 
        Secure Preference Manager
        - Secure Preference Manager for android. It uses various Encryption to
        protect your application’s Shared Preferences.
      
 
      - 
        LeakCanary - Catch
        memory leaks as they occur.
      
 
      - 
        Drekkar - An Android
        event bus for WebView and JS.
      
 
      - 
        Androl4b - A vm for
        assessing android applications.
      
 
      - 
        DroidMVP - Android
        library to help you incorporate MVP along with Passive View and
        Presentation Model patterns into your app.
      
 
      - 
        EasyDeviceInfo -
        Get device information in a super easy way.
      
 
      - 
        Shutter-Android
        - Capture photos/videos from device camera or get photos/video from
        gallery app with no runtime permissions needed.
      
 
      - 
        Validator - An
        utilities class to validate text inside TextInputLayout.
      
 
      - 
        Keyboard Visibility Event
        - A DSL to handle soft keyboard visibility change event.
      
 
      - 
        TimeIt - A
        stopwatch library for android which makes it easy to start, pause,
        display and maintain multiple stopwatches in an app.
      
 
      - 
        Reactor - Reactor is
        a fast and secure key-value library for Android.
      
 
    
    
    
      - 
        Linx - Show logcat inside
        the device for debug builds
      
 
      - 
        Scalpel - View the
        entire hierarchy in 3d in the phone.
      
 
      - 
        Stetho - Debug
        hierarchy and network from chrome.
      
 
      - 
        Android Debug Database
        - Android Debug Database is a powerful library for debugging databases
        and shared preferences in Android applications.
      
 
      - 
        Android Debug Bridge - ADB
        - a command-line tool to assist in debugging Android-powered devices
      
 
      - 
        ADB Enhanced - a
        command-line wrapper around ADB for developers, so that, developers
        don’t have to remember esoteric version-dependent commands
      
 
      - 
        Pidcat - a colored
        command-line ADB wrapper that only shows log entries for a specific
        application package
      
 
      - 
        AppSpector - Remote Android and iOS
        debugging and data collection service. You can debug networking, logs,
        SQLite and mock device’s geo location.
      
 
    
    Wireless
    
      - 
        SmartGattLib -
        Simplifies the work with Bluetooth SMART devices (a.k.a. Bluetooth Low
        Energy in Bluetooth 4.0).
      
 
    
    Chat & Messaging
    
      - 
        Applozic Android Chat SDK
        - Android Chat and Messaging SDK for adding real time chat and in-app
        messaging into your android application.
      
 
      - 
        Qiscus SDK -
        Qiscus SDK is a lightweight and powerful android chat library. Qiscus
        SDK will allow you to easily integrating Qiscus engine with your apps to
        make cool chatting application.
      
 
      - 
        Kommunicate Live Chat SDK
        - Kommunicate provides open source live chat sdk in android. Kommunicate
        lets you add real time live chat and in-app messaging in your mobile
        (android, iOS) applications and website for customer support.
      
 
      - 
        CometChat Voice, Video and Text Chat SDK with UI
        - Add voice, video and text chat to your app (and website) in minutes
        using CometChat. CometChat’s SDK includes a complete ready UI so that
        you don’t have to spend any time building one! That’s not all, CometChat
        has out-of-the-box support for real-time translation, whiteboards,
        screen sharing, friends sync, role based access control, credits
        deduction and more.
      
 
      - 
        Build a one-on-one Android chat app using Kotlin
        - Build a one-one-one Android chat app in Kotlin within few minutes
        using CometChat Pro. This tutorial discusses the features such as login,
        getting list of contacts, user presence indicators, sending/receiving
        messages etc.
      
 
      - 
        Stream Chat -
        Comprehensive SDK & Components for real-time chat, powered by
        Stream.
      
 
      - 
        Add Push Notifications to Your Android Chat App Using Kotlin
        - Add push notifications in your Android chat apps in Kotlin with the
        help of CometChat Pro and Firebase Cloud Messaging (FCM).
      
 
    
    Custom Dialog
    
      - 
        MediaRecorderDialog
        - Custom Dialog to record audio, store it and play it in your phone.
      
 
      - 
        HijriDatePicker
        - offers a hijri (Islamic Calendar) Date Picker designed on Google’s
        Material Design Principals For Pickers.
      
 
      - 
        Noty - A simple library
        for creating animated alerts/dialogs/warnings.
      
 
    
    Version Checking
    
      - 
        AppUpdater -
        comprehensive and feature rich library, including support for checks at
        Amazon and FDroid.
      
 
      - 
        Gandalf - comprehensive
        features and a “companion” iOS solution.
      
 
      - 
        Siren - focused
        feature set that mimicks the popular iOS library of the same name.
        Supports Play and Amazon.
      
 
      - 
        Fit - version checking
        callback framework with no UI.
      
 
    
    Date & Time
    
    Runtime Permissions
    
      - 
        Permission Dispatcher
        - Simple annotation-based API to handle runtime permissions.
      
 
      - 
        RxPermissions -
        Android runtime permissions powered by RxJava.
      
 
      - 
        NoPermission -
        Simple Android library for permissions request. Consists of only one
        class.
      
 
      - 
        Ask-Permission
        - Simple RunTime permission manager.
      
 
      - 
        Gota - Simplifying
        Android Permissions.
      
 
      - 
        EasyPermissions
        - EasyPermissions is a wrapper library to simplify basic system
        permissions logic when targeting Android M or higher.
      
 
    
    Payments
    
    Other
    
      - 
        Android Support library
        - The Android Support Library package is a set of code libraries that
        provide backward-compatible versions of Android framework API.
      
 
      - 
        Google Play Services
        - Library to access Google services, such as account syncing, Google+
        (sharing, single sign-on), Google Maps, Location APIs, Google Play
        Games, Cloud Messaging, Android Device Manager, and others.
      
 
      - 
        Tape - A lightning fast,
        transactional, file-based FIFO for Android and Java.
      
 
      - 
        Guava: Google Core Libraries for Java
        - Collections, caching, primitives support, concurrency libraries,
        common annotations, string processing, I/O, and so forth.
      
 
      - 
        Android Scripting -
        Allows to run scripting languages on Android.
      
 
      - 
        Android Priority Job Queue
        - Implementation of a Job Queue to easily schedule jobs (tasks) that run
        in the background, improving UX and application stability.
      
 
      - 
        RateMeMaybe - Asks the
        user if (s)he wants to open the Play Store to rate your application.
      
 
      - 
        Easy Rating Dialog
        - Lib provides a simple way to display an alert dialog for rating app.
      
 
      - 
        ZXing Android-Integration -
        Integration with Barcode Scanner via Intent.
      
 
      - 
        Gradle Retrolambda Plugin
        - Java 8 Lambdas on Android!
      
 
      - 
        RxJava- RxJava –
        Reactive Extensions for the JVM – a library for composing asynchronous
        and event-based programs using observable sequences for the Java VM.
      
 
      - 
        RxAndroid - Adds
        minimum RxJava bindings for easy writing of reactive Android java code.
      
 
      - 
        RxBinding-
        RxBinding – RxJava binding APIs for Android UI widgets from the platform
        and support libraries.
      
 
      - 
        Caffeine - A
        collection of utility classes that help make Android development faster.
      
 
      - 
        AboutLibraries
        - Automatically generates an About this app section, with a list of used
        libraries.
      
 
      - 
        AudioPlayerView
        - A view that loads audio from an url and have basic playback tools.
      
 
      - 
        andle - command line tool
        help you sync dependencies, sdk or build tool version.
      
 
      - 
        Typography - An
        Android library that makes it easy to use custom fonts in views.
      
 
      - 
        Calligraphy -
        Custom fonts in Android an OK way.
      
 
      - 
        transai - command line
        tool help you manage localization string files.
      
 
      - 
        Android-Link-Preview
        - It makes a preview from an url, grabbing all the information such as
        title, relevant texts and images.
      
 
      - 
        Sensey - Detecting
        gestures in a snap.
      
 
      - 
        UserAwareVideoView
        - A customized video view that will automatically pause video is user is
        not looking at device screen!
      
 
      - 
        Flexbox Layout -
        FlexboxLayout is a library which brings the similar capabilities of CSS
        Flexible Box Layout Module to Android.
      
 
      - 
        Agile Boiler Plate
        - The boiler plate is based on MVP architecture and it is fully based on
        Dependency Injection design pattern using Dagger2.
      
 
      - 
        Gradle buildSrcVersions
        - A kotlin dsl to simplify dependencies management
      
 
      - 
        Teller -
        Teller facilitates the downloading, saving, and reading of the cached
        data of your app. Keep your user’s data fresh and remove those annoying
        loading screens!
      
 
    
    Resources
    
    Code examples
    
    Podcasts
    
      - 
        Fragmented is the Android
        developer podcast where Donn Felker and Kaushik Gopal talk about
        building good software and becoming better Android developers.
      
 
      - 
        Android Developers Backstage
        is a podcast by and for Android developers. Hosted by developers from
        the Android engineering team, this show covers topics of interest to
        Android programmers, with in-depth discussions and interviews with
        engineers on the Android team at Google.
      
 
      - 
        Android Dialogs
        is a video based podcast, where they have bite-sized conversations with
        people from the Android community.
      
 
      - 
        The Context
        a podcast about Android Development with Hannes Dorfmann, Artem
        Zinnatullin and wonderful guests!
      
 
      - 
        Talking Kotlin - A Podcast on
        Kotlin and more.
      
 
      - 
        Android Authority
        is a weekly Android podcast hosted by Adam Doud, Joe Hindy, and Jonathan
        Feist from the Android Authority team.
      
 
      - 
        Android Central -
        is a weekly Android podcast hosted by the Android Central team.
      
 
    
    More lists of libraries
    
      - 
        The Android Arsenal - Large
        list of android libraries
      
 
      - 
        Square libraries - Multiple high
        quality libraries by square.
      
 
      - 
        [Awesome Android @LibHunt](https://android.libhunt.com) - Your go-to Android Toolbox.
      
 
      - 
        Android Store - Search
        Android Libraries, Projects, and Tools.
      
 
    
    Development Alternatives
    
      My personal recommendation is (for now) to use the android api to build a
      native app. Scala can help to build this native apps with cleaner code but
      it adds to many methods (Multidex required). Kotlin is a modern language
      with 100% interoperatibility with java projects
      without multidex. But there are also use cases where
      alternatives like cross-platform development can be useful.
    
    C#
    
      - 
        Xamarin -
        Framework to create native iOS, Android, Mac and Windows apps in C#.
      
 
    
    HTML, CSS and Javascript
    
      - 
        PhoneGap - Open source framework by
        Adobe to create cross platform mobile apps using HTML, CSS, and
        JavaScript.
      
 
      - 
        Titanium
        - Open-source framework to create ‘native’ cross platform apps using
        JavaScript.
      
 
      - 
        NativeScript - An
        open-source framework to build native iOS and Android apps with
        JavaScript from a single code base.
      
 
      - 
        React Native - A
        framework for building native apps with React by Facebook.
      
 
      - 
        Ionic Framework - A framework
        to build hybrid apps with mobile-optimized HTML, CSS and JS with
        AngularJS.
      
 
      - 
        Apache Cordova -
        Cordova based applications are, at the core, applications written with
        web technology: HTML, CSS and JavaScript.
      
 
      - 
        Capacitor - Build
        cross-platform Native Progressive Web Apps for iOS, Android, and the
        web. Very promising Cordova alternative.
      
 
    
    Lua
    
      - 
        Corona SDK - Framework to
        create native iOS and Android Apps (especially Games).
      
 
    
    Scala
    
      - 
        Scaloid - Library for
        less painful Android development with Scala.
      
 
      - 
        Macroid - A modular
        functional UI language for Android.
      
 
    
    Groovy
    
    Kotlin
    
      - 
        Anko - DSL for Android
        written in Kotlin by JetBrains.
      
 
      - 
        Kotterknife -
        Android view injection written in Kotlin based on ButterKnife
      
 
      - 
        Android Kotlin Samples
        - Some basic Android code samples written in Kotlin.
      
 
      - 
        Kotlin coding puzzles
        - Set of programming challenges thats helps to improve whiteboard coding
        and problem-solving skills.
      
 
      - 
        KAndroid - Lightweight
        library providing useful extensions to eliminate boilerplate code in
        Android SDK.
      
 
      - 
        RxKotlin/Pocket - This
        app help user to save links easily, and can export to Evernote as
        weekly.
      
 
      - 
        Android Clean Architecture - Kotlin
        - A base project using the Uncle Bob’s clean architecture with Kotlin
        language and the latest Android technologies.
      
 
      - 
        Koin - Lightweight dependency
        injection framework for Kotlin
      
 
    
    Flutter
    
      - 
        Flutter - Google’s mobile app SDK for
        high-quality native interfaces for Android and iOS in very quick time.
      
 
    
    
    
      - 
        awesome-android-performance
        - A list of awesome Android tutorials, videos and tools for performance
        optimization.
      
 
      - 
        Booster - Booster is an
        optimization toolkit for Android applications.
      
 
    
    Other Awesome Lists
    
      Other amazingly awesome lists can be found in the
      awesome-awesomeness
      list.
    
    Contributing
    
      Your contributions are always welcome! Please read the
      contribution guidelines first.